cient Computation of Fixpoints that Arise in Complex Program Analysis
نویسنده
چکیده
This paper proposes a model for studying the computation of xpoints that arise in complex program analysis based on abstract interpretation, and presents an e cient algorithm for computing xpoints based on the model. Abstract interpretation provides a uni ed framework for handling interprocedural analysis of programs with unrestricted pointer manipulation, higher-order functions, and continuations. In the general case, the structure of the xpoint computation is not known before analysis; that is, the ow graph cannot be determined from the syntax of a program. Abstract interpretation handles this situation easily. In our algorithm, the entailment graph, representing the structure of the xpoint computation, is developed during analysis. The strategies for determining the evaluation order, which underlie the algorithm, are described. Based on the strategies, local knowledge of the entailment graph at each node is exploited to determine dynamically an e ective order of evaluation. The algorithm behaves like those based upon interval analysis of a ow graph, but without requiring the interprocedural control ow graph to be given a priori. The algorithm has been implemented, and experiments have been conducted to compare it to other iterative algorithms for solving such problems. The results show that the algorithm is exible, e cient, and consistently better than the others.
منابع مشابه
Efficient computation of fixpoints that arise in complex program analysis
This paper presents an eecient algorithm for solving the xpoints that arise in complex program analysis based on abstract interpretation. The algorithm behaves like those based upon interval analysis of a ow graph, but without requiring the ow graph to be given a priori. In the general case, the structure of the x-point computation is not known prior to analysis. In the algorithm, the entailmen...
متن کاملFixing Zeno gaps
In computer science fixpoints play a crucial role. Most often least and greatest fixpoints are sufficient. However there are situations where other ones are needed. In this paper we study, on an algebraic base, a special fixpoint of the function f (x) = a · x that describes infinite iteration of an element a. We show that the greatest fixpoint is too imprecise. Special problems arise if the ite...
متن کاملUniversität Augsburg Fixing Zeno Gaps
In computer science fixpoints play a crucial role. Most often least and greatest fixpoints are sufficient. However there are situations where other ones are needed. In this paper we study, on an algebraic base, a special fixpoint of the function f (x) = a · x that describes infinite iteration of an element a. We show that the greatest fixpoint is too imprecise. Special problems arise if the ite...
متن کاملFixpoints and Iterated Updates in Abstract Argumentation
Fixpoints play a key role in the mathematical set up of abstract argumentation theory but, we argue, have been relatively underexamined in the literature. The paper studies the logical structure underlying the computation via approximation sequences of the sort of fixpoints relevant in argumentation. Concretely, it presents a number of novel results on the fixed point theory underpinning the ma...
متن کاملFixpoints for general correctness
We investigate various fixpoint operators in a semiring-based setting that models a general correctness semantics of programs. They arise as combinations of least/greatest (pre/post)fixpoints with respect to refinement/approximation. In particular, we show isotony of these operators and give representations of fixpoints in terms of other fixpoints. Some results require completeness of the Egli-...
متن کامل